package _02_并查集;
/*
    QuickUnion:基于rank的优化-路径压缩PC
 */
public class QuickUnion_Rank_Pc extends QuickUnion_Rank{
    public QuickUnion_Rank_Pc(int capacity) {
        super(capacity);
    }


    //find的时候将路径上的所有节点都指向根节点
    @Override
    public int find(int v) {
        rangeCheck(v);
        if(parents[v]!=v){
            //递归调用
            parents[v] = find(parents[v]);
        }
        return parents[v];
    }
}
